# 1.封装函数，给定一个文件夹路径，获取该路径下所有的文件，注意：要输出所有文件夹及子文件夹下面的文件
import os

path = r"D:\python-spider"  # 改成你要扫描的路径

def scan_dir(path):
    print("所有文件（包括子目录）:")
    print("=" * 50)

    count = 0
    for root, dirs, files in os.walk(path):
        # 排除.git和.idea目录（关键修正）
        dirs[:] = [d for d in dirs if d not in ['.git', '.idea']]

        # 如果当前目录是.git或.idea，跳过
        if os.path.basename(root) in ['.git', '.idea']:
            continue
        level = root.replace(path, '').count(os.sep)  # 计算目录深度
        indent = ' ' * 2 * level
        print(f"{indent}{os.path.basename(root)}/")  # 显示目录名

        sub_indent = ' ' * 2 * (level + 1)
        for file in files:
            print(f"{sub_indent}{file}")  # 显示文件名
            count += 1

    print("=" * 50)
    print(f"总共找到 {count} 个文件")

scan_dir(path)


